In computer systems, utility computer applications and scripts are used to automate tasks that would otherwise require users to perform a large number of steps. For example, utility applications can be used to collect changes in a large database and forward the changes to a central server.
In order to protect data and applications, computer systems typically employ some form of security that requires each user to provide a user ID and a password before the system will grant access to the data and/or applications. The user ID and password are referred to as credentials. To reduce the amount of harm that can occur if a user ID and password are compromised, many systems require that passwords be changed on a periodic basis such as once every seventy-five days. This is referred to as password rotation.
In systems that require credentials, local services, remote services and web services (referred to generically as services) must be run under a valid set of credentials. Typically, this is done by creating special user ID(s) for running the services and assigning a password to each special user ID. The special user ID and password are then written into a utility application or a script that calls a credential setting service that sets the credentials that one or more other services will run under. There are several possible credential setting services such as Auto Logon, Service Control (sc), Virtual Directory, and scripts that set the identity of an Application Pool.
If the user ID and password are written into an application, the application must be changed and recompiled each time the password changes. When there are a large number of applications, this becomes extremely time consuming.
If the user ID and password are written into a script, the script does not need to be recompiled when the user ID and password are changed. However, the user ID and password are present in plain text form in the script and anyone who can gain access to the script can acquire the user ID and password.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in the background.